\chapter{Claude Code快速入门}

\subsection{安装步骤}

\subsubsection{Windows用户（推荐WSL）}

Windows用户推荐使用WSL获得更好的兼容性：

\begin{lstlisting}[style=BashStyle]
# 1. 安装WSL（管理员权限）
wsl --install -d Ubuntu

# 2. 重启后，在WSL中安装Node.js
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo bash -
sudo apt-get install -y nodejs
\end{lstlisting}
也可以直接在Windows安装Nodejs， 然后在CMD中安装Claude Code,然后在Vscode的终端中运行Claude Code。

\subsubsection{Linux/macOS用户}

\begin{lstlisting}[style=BashStyle]
# Ubuntu/Debian
sudo apt update && curl -fsSL https://deb.nodesource.com/setup_22.x | sudo bash -
sudo apt-get install -y nodejs

# macOS（推荐Homebrew）
brew install node

# 验证安装
node -v && npm -v
\end{lstlisting}

\subsubsection{安装Claude Code}

\begin{lstlisting}[style=BashStyle]
# 官方版本
npm install -g @anthropic-ai/claude-code

# 验证安装
claude --version
\end{lstlisting}

\subsection{后端服务商配置}

\subsubsection{服务商配置表}

\begin{table}[h]
\centering
\begin{tabular}{|l|l|l|l|}
\hline
\textbf{服务商} & \textbf{API地址} & \textbf{模型名称} & \textbf{特点} \\
\hline
GLM-4.5 & https://open.bigmodel.cn/anthropic & glm-4 & 最经济，简单任务 \\
\hline
GacCode & https://gaccode.com/claudecode & sonnet-4（默认） & 成本功能平衡 \\
\hline
DeepSeek & https://api.deepseek.com/anthropic & \makecell{deepseek-reasoner \\ deepseek-chat} & 专业编程能力 \\
\hline
Kimi & https://api.moonshot.cn/anthropic/ & \makecell{kimi-k2-0905-preview \\ kimi-k2-turbo-preview} & 最高能力，研究 \\
\hline
\end{tabular}
\caption{Claude Code原生支持的后端服务商}
\end{table}

\begin{warningbox}[避免使用CCR服务]
SiliconFlow、Ark Volcengine等服务需要CCR（Claude Code Router）才能支持Claude Code，会大量消耗Token且不支持缓存，成本很高，不推荐通过CCR使用。
\end{warningbox}

\subsubsection{配置示例}

\textbf{GLM-4.5配置}（注册：open.bigmodel.cn）
\begin{lstlisting}[style=BashStyle]
export ANTHROPIC_BASE_URL=https://open.bigmodel.cn/anthropic
export ANTHROPIC_API_KEY=your_glm_api_key
export ANTHROPIC_MODEL=glm-4
\end{lstlisting}

\textbf{GacCode配置}（注册：gaccode.com，需替换官方版本）
\begin{lstlisting}[style=BashStyle]
npm uninstall -g @anthropic-ai/claude-code
npm install -g https://gaccode.com/claudecode/install --registry=https://registry.npmmirror.com
\end{lstlisting}

\textbf{DeepSeek配置}（注册：platform.deepseek.com）
\begin{lstlisting}[style=BashStyle]
export ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic
export ANTHROPIC_AUTH_TOKEN=your_deepseek_api_key
export ANTHROPIC_MODEL=deepseek-reasoner  # 或 deepseek-chat
\end{lstlisting}

\textbf{Kimi配置}（注册：platform.moonshot.cn）
\begin{lstlisting}[style=BashStyle]
export ANTHROPIC_BASE_URL=https://api.moonshot.cn/anthropic/
export ANTHROPIC_API_KEY=your_kimi_api_key
export ANTHROPIC_MODEL=kimi-k2-0905-preview  # 或 kimi-k2-turbo-preview
\end{lstlisting}

\subsection{验证安装}

\begin{lstlisting}[style=BashStyle]
# 基本验证
claude --version

# 功能测试
mkdir claude-test && cd claude-test
claude
\end{lstlisting}

在Claude Code中输入以下命令进行测试：
\begin{verbatim}
你好！请确认你可以访问后端API，告诉我你正在使用哪个模型。
\end{verbatim}

% \subsection{常见问题}

% \begin{itemize}
% \item \textbf{命令未找到}：检查\texttt{npm config get prefix}是否在PATH中
% \item \textbf{权限错误}：运行\texttt{sudo chown -R \$(whoami) \$(npm config get prefix)/\{lib/node\_modules,bin,share\}}
% \item \textbf{API连接失败}：验证密钥和网络连接
% \end{itemize}

\section{基础使用指南}

\subsection{启动和基本命令}

\begin{lstlisting}[style=BashStyle]
claude                    # 启动Claude Code
claude --help            # 显示帮助
claude --add-dir ../lib   # 添加工作目录
claude --dangerously-skip-permissions  # 跳过权限提示
\end{lstlisting}

\subsection{核心对话模式}

\subsubsection{代码分析}
\begin{itemize}
\item "分析这个项目的结构"
\item "检查main.py并建议改进"
\item "找到所有TODO注释"
\end{itemize}

\subsubsection{开发任务}
\begin{itemize}
\item "实现用户认证系统"
\item "调试这个错误：[错误信息]"
\item "重构这个函数提高效率"
\end{itemize}

\subsubsection{文件操作}
\begin{itemize}
\item "创建utils.py文件"
\item "更新README.md"
\item "显示git diff"
\end{itemize}

\subsection{会话管理}

Claude Code维护会话上下文，包括：
\begin{itemize}
\item 讨论过的文件
\item 代码更改
\item 项目理解
\item 对话历史
\end{itemize}

\textbf{上下文管理技巧}：
\begin{itemize}
\item "总结这次会话成果"
\item "开始新功能，忘记之前的调试内容"
\item "保存进度并创建下次会话摘要"
\end{itemize}

\subsection{基本工作流}

\subsubsection{调试流程}
\begin{enumerate}
\item 描述问题
\item Claude分析相关文件
\item 获得修复建议
\item 实施更改
\item 测试验证
\end{enumerate}

\subsubsection{代码审查流程}
\begin{enumerate}
\item 请求审查
\item 获得质量反馈
\item 应用改进建议
\item 更新文档
\end{enumerate}

\subsection{内置命令}

\begin{lstlisting}[style=BashStyle]
/help      # 显示帮助
/mcp       # 列出MCP服务器
/agents    # 管理子代理
/exit      # 退出
\end{lstlisting}

\subsection{快速参考}

\begin{lstlisting}[style=BashStyle]
# 基本命令
claude                    # 启动
claude --version          # 版本

# 环境变量示例
export ANTHROPIC_BASE_URL=https://api.example.com
export ANTHROPIC_API_KEY=your_key
export ANTHROPIC_MODEL=model_name

# WSL文件访问
cd /mnt/c/Users/$USER/Desktop  # Windows文件
\\wsl.localhost\Ubuntu\home\username  # WSL文件（Windows中）
\end{lstlisting}



\section{立即开始}

Claude Code是AI辅助编程工具，5分钟内即可上手。本章提供最实用的快速入门指南。

\section{1分钟环境检查}

运行以下命令检查环境：

\begin{itemize}
\item \textbf{Python}：\texttt{python3 --version}
\item \textbf{Node.js}：\texttt{node --version} 
\item \textbf{Git}：\texttt{git --version}
\item \textbf{Claude CLI}：\texttt{claude --version}
\end{itemize}

\begin{tipbox}[快速修复]
如果命令失败，立即安装：
\begin{itemize}
\item Python: \texttt{sudo apt install python3}
\item Node.js: \texttt{sudo apt install nodejs npm}
\item Git: \texttt{sudo apt install git}
\item Claude CLI: 访问 claude.ai/cli 下载
\end{itemize}
\end{tipbox}

\section{3个黄金法则}

\subsection{法则1：直接说需求}

不要绕弯子，直接说要什么：

\begin{tipbox}[正确示例]
``帮我创建一个FastAPI应用，包含用户注册登录功能，使用SQLite数据库。''
\end{tipbox}

\begin{warningbox}[避免的表达]
``我想做一个项目，可能需要一些功能，你觉得怎么样...''
\end{warningbox}

\subsection{法则2：提供关键信息}

每次对话开始时提供4个信息：
\begin{enumerate}
\item 项目类型（Web应用/API/脚本等）
\item 技术栈（Python/React/数据库等）
\item 当前状态（新项目/已有代码）
\item 具体目标（要实现什么功能）
\end{enumerate}

\subsection{法则3：快速验证}

每次修改后立即测试：
\begin{itemize}
\item 运行代码验证功能
\item 检查错误信息
\item 测试边界情况
\item 及时反馈结果给Claude
\end{itemize}

\section{选择合适的工作模式}

\subsection{单会话模式（90\%的情况）}

适用于大多数开发任务：
\begin{itemize}
\item 创建新功能（API、组件、脚本）
\item 修复Bug和调试
\item 代码重构和优化
\item 添加测试和文档
\end{itemize}

\textbf{实用技巧}：
\begin{itemize}
\item 一次对话解决一个核心问题
\item 保持会话在30-50轮对话内
\item 完成后立即测试验证
\end{itemize}

\subsection{多会话模式（复杂项目）}

当项目需要多个阶段时使用：
\begin{itemize}
\item 会话1：需求分析和架构设计
\item 会话2：核心功能实现
\item 会话3：测试和部署
\end{itemize}

\begin{tipbox}[会话衔接技巧]
新会话开始时，简短总结前一会话成果：``上次已完成用户认证模块，现在需要添加权限管理功能。''
\end{tipbox}

\section{常用项目模板}

\subsection{Python Web API}
\begin{itemize}
\item \textbf{FastAPI项目}：``创建一个FastAPI项目，包含用户认证、数据库连接和基础CRUD操作''
\item \textbf{Flask API}：``创建Flask API项目，使用SQLAlchemy ORM和JWT认证''
\end{itemize}

\subsection{前端项目}
\begin{itemize}
\item \textbf{React应用}：``创建React应用，配置Tailwind CSS和React Router''
\item \textbf{Vue项目}：``创建Vue3项目，使用Composition API和Pinia状态管理''
\end{itemize}

\subsection{数据脚本}
\begin{itemize}
\item \textbf{数据处理}：``创建Python脚本，读取CSV文件并生成统计报表''
\item \textbf{API客户端}：``创建API客户端脚本，包含错误重试和日志记录''
\end{itemize}

\section{快速质量检查清单}

每次开发完成后检查：
\begin{itemize}
\item[$\square$] 代码能正常运行
\item[$\square$] 错误情况有友好提示
\item[$\square$] 关键功能有简单测试
\item[$\square$] README文件说明基本用法
\item[$\square$] 依赖关系文件完整（requirements.txt等）
\end{itemize}

\begin{tipbox}[一键质量检查]
Python项目运行：
\begin{itemize}
\item \texttt{black .} - 代码格式化
\item \texttt{flake8 .} - 代码风格检查  
\item \texttt{pytest} - 运行测试
\end{itemize}
\end{tipbox}

\section{实用命令速查}

\subsection{Python开发}
\begin{itemize}
\item \texttt{python -m venv venv} - 创建虚拟环境
\item \texttt{source venv/bin/activate} - 激活虚拟环境  
\item \texttt{pip install -r requirements.txt} - 安装依赖
\item \texttt{python -m pytest} - 运行测试
\end{itemize}

\subsection{Node.js开发}
\begin{itemize}
\item \texttt{npm init -y} - 初始化项目
\item \texttt{npm install} - 安装依赖
\item \texttt{npm run dev} - 启动开发服务器
\item \texttt{npm test} - 运行测试
\end{itemize}

\subsection{Git常用命令}
\begin{itemize}
\item \texttt{git init} - 初始化仓库
\item \texttt{git add .} - 添加所有文件
\item \texttt{git commit -m "message"} - 提交代码
\item \texttt{git push} - 推送到远程仓库
\end{itemize}

\section{常见问题快速解决}

\subsection{环境问题}
\begin{itemize}
\item \textbf{Python版本错误}：使用\texttt{python3}而不是\texttt{python}
\item \textbf{模块找不到}：检查虚拟环境是否激活
\item \textbf{权限问题}：使用\texttt{pip install --user}
\end{itemize}

\subsection{代码问题}
\begin{itemize}
\item \textbf{语法错误}：仔细检查括号、引号配对
\item \textbf{导入错误}：检查文件路径和模块名称
\item \textbf{运行时错误}：添加打印语句调试
\end{itemize}

\section{开始第一个项目}

现在你已经掌握基础知识，可以开始第一个项目：

\begin{tipbox}[30秒开始项目]
对Claude说：``帮我创建一个[项目类型]，需要[具体功能]，使用[技术栈]。''

例如：``帮我创建一个Todo应用API，需要增删改查功能，使用Python FastAPI和SQLite。''
\end{tipbox}

\begin{itemize}
\item 描述要清晰具体
\item 说明技术偏好  
\item 及时测试和反馈
\item 一步步完善功能
\end{itemize}

\section{小结}

本章提供了Claude Code的快速上手指南：

\begin{itemize}
\item \textbf{1分钟环境检查}：确保基础工具可用
\item \textbf{3个黄金法则}：直接说需求、提供关键信息、快速验证
\item \textbf{工作模式选择}：单会话解决90\%问题，复杂项目用多会话
\item \textbf{实用工具}：项目模板、命令速查、问题解决
\end{itemize}

接下来你将学习如何快速识别和分类不同的开发任务，选择最合适的策略方法。

% \section{Claude Code安装配置}

% \subsection{系统要求}

% \begin{itemize}
% \item \textbf{操作系统}：Linux、macOS或Windows（通过WSL推荐）
% \item \textbf{Node.js}：18.0+版本
% \item \textbf{内存}：最低4GB，推荐8GB
% \item \textbf{网络}：稳定互联网连接
% \end{itemize}
